public class OllamaResponse {
    private String model;
    private String response;
    private boolean done;
    private String doneReason;
    private long totalDuration;
    private long loadDuration;
    private long promptEvalCount;
    private long promptEvalDuration;
    private long evalCount;
    private long evalDuration;
    
    // Getters
    public String getModel() { return model; }
    public String getResponse() { return response; }
    public boolean isDone() { return done; }
    public String getDoneReason() { return doneReason; }
    public long getTotalDuration() { return totalDuration; }
    public long getLoadDuration() { return loadDuration; }
    public long getPromptEvalCount() { return promptEvalCount; }
    public long getPromptEvalDuration() { return promptEvalDuration; }
    public long getEvalCount() { return evalCount; }
    public long getEvalDuration() { return evalDuration; }
    
    // Setters
    public void setModel(String model) { this.model = model; }
    public void setResponse(String response) { this.response = response; }
    public void setDone(boolean done) { this.done = done; }
    public void setDoneReason(String doneReason) { this.doneReason = doneReason; }
    public void setTotalDuration(long totalDuration) { this.totalDuration = totalDuration; }
    public void setLoadDuration(long loadDuration) { this.loadDuration = loadDuration; }
    public void setPromptEvalCount(long promptEvalCount) { this.promptEvalCount = promptEvalCount; }
    public void setPromptEvalDuration(long promptEvalDuration) { this.promptEvalDuration = promptEvalDuration; }
    public void setEvalCount(long evalCount) { this.evalCount = evalCount; }
    public void setEvalDuration(long evalDuration) { this.evalDuration = evalDuration; }
    
    @Override
    public String toString() {
        return String.format(
            "模型: %s\n" +
            "响应: %s\n" +
            "完成状态: %s\n" +
            "完成原因: %s\n" +
            "总耗时: %dms\n" +
            "加载耗时: %dms\n" +
            "提示词评估次数: %d\n" +
            "提示词评估耗时: %dms\n" +
            "评估次数: %d\n" +
            "评估耗时: %dms",
            model, response, done, doneReason,
            totalDuration / 1000000, // 转换为毫秒
            loadDuration / 1000000,
            promptEvalCount,
            promptEvalDuration / 1000000,
            evalCount,
            evalDuration / 1000000
        );
    }
} 